package com.lvmama.dao.rhino.system;

import com.lvmama.pojo.dto.rhino.system.MenuDTO;
import com.lvmama.pojo.dto.rhino.system.MenuQuery;
import com.lvmama.pojo.dto.rhino.system.MenuQueryDTO;
import com.lvmama.pojo.entity.rhino.system.Menu;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface MenuDao {
    int countByExample(MenuQuery example);

    int deleteByExample(MenuQuery example);

    int deleteByPrimaryKey(String id);

    int insert(Menu record);

    int insertSelective(MenuDTO menuDTO);

    List<Menu> selectByExample(MenuQuery example);

    List<Menu> selectMenuList(MenuQueryDTO query);

    List<Menu> selectMenuListByUserId(String userId);

    Menu queryMenuById(String id);

    Integer countMenuList();

    Menu selectByPrimaryKey(String id);

    int updateByExampleSelective(@Param("record") Menu record, @Param("example") MenuQuery example);

    int updateByExample(@Param("record") Menu record, @Param("example") MenuQuery example);

    int updateByPrimaryKeySelective(MenuDTO menuDTO);

    int updateByPrimaryKey(Menu record);
}
